export function BindThis(target: any, key: string, descriptor: PropertyDescriptor): PropertyDescriptor {
    const method = descriptor.value;
    return <PropertyDescriptor>{
        configurable: true,
        get() {
            return method.bind(this);
        }
    }
}